
Erros: Tipo (T), Modo (M), Domnio (D), Semntico (S)

--------------------------------------------

SLICE

slice(+A, +Na, +Nb, -Asub)



slice(5, 1, 2, Asub) ::: throw(_). -- T

slice('ABC', nonsense, 2, Asub) ::: throw(_). -- T

slice('ABC', 1, nonsense, Asub) ::: throw(_). -- T


slice('ABC', NONSENSE, 2, Asub) ::: throw(_). -- M

slice('ABC', 1, NONSENSE, Asub) ::: throw(_). -- M

slice(NONSENSE, 1, 2, Asub) ::: throw(_). -- M


slice('ABC', 0, 2, Asub) ::: throw(_). -- D

slice('ABC', 1, 0, Asub) ::: throw(_). -- D


slice('ABC', 1, 10, 'ABC') ::: true. -- S

slice('ABC', 1, 1, 'A') ::: true. -- S

slice('ABC', 4, 2, '') ::: true. -- S

slice(abc, 1, -1, abc) ::: true. -- S

--------------------------------------------

CONCAT

concat(+L,-A)



concat(0, X) ::: trow(_). -- T

concat('ABC', X) ::: throw(_) -- T

concat(NONSENSE, X) ::: throw(_). -- M


concat(['A', 'B', [' ', c]], 'AB c') ::: true. -- S


X === 0 ::: throw(_). -- T

X === 'ABC' ::: throw(_) -- T

X === NONSENSE ::: throw(_) -- M


X === ['A', 'B', [' ', c]], X =='AB c' ::: true. -- S
















